![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 247 Pomógł: 9 Dołączył: 20.09.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Witam, kolejny problem z którym się spotykam, tzn nie problem ale właściwy sposób.
Mam taki kod:
Oraz:
Działa więc się cieszę, ale czy to jest dobry sposób? Często widzę w niektórych frameworkach czy CMS`ach że tak się stosuje, ale czy w takich przypadkach jak mój. Pozdrawiam. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 12 Pomógł: 0 Dołączył: 26.06.2010 Skąd: Polska Ostrzeżenie: (0%) ![]() ![]() |
Za każdym zapytaniem od nową łączysz się z bazą danych, ja łączenie się z bazą danych zrobiłbym w konstruktorze.
-------------------- Have a Иice day
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 247 Pomógł: 9 Dołączył: 20.09.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Wiem, ale chciałem uniknąć zbędnego połączenia jeśli mi jest ono nie potrzebne. Chodzi mi tylko czy to jest dobre podejście, czy raczej tego unikać. Jestem początkującym, dopiero zaczynam pracę z programowaniem obiektowym, a nie chcę źle się uczyć.
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Cytat a nie chcę źle się uczyć. No to:1. Nazwa Controller sugeruje jakiś związek z architekturą MVC. Jeśli tak jest to: kontroler nie ma nic wspólnego z bazą danych i nie powinien mieć nawet do niej dostępu. 2. Klasa Exception powinna być w PHP abstrakcyjna, bo... jej obiektami nie powinno się rzucać (powinieneś skorzystać z bardziej wyspecjalizowanego typu). 3. Wyrzucenie wyjątku tylko po to by za chwilę go złapać i kompletnie nic z nim nie zrobić, poza durnym wyświetleniem wiadomości mija się z celem - już lepiej użyć exit w takim przypadku. 4. Do obsługi bazy danych masz w miarę przyzwoite rozszerzenie PDO. 5. Korzystaj z mechanizmów automatycznego ładowania klas (ang. autoloading) bo się pochlastasz z ręcznym wczytywaniem. 6. Zdajesz sobie sprawę, że Controller: ![]() EDIT: I daruj sobie póki co lekturę wzorca Singleton, bo użycie jakie sugeruje @Wicepsik jest tutaj złe pod każdym względem, a de facto nie potrzebujesz tutaj nigdzie prawdziwych cech tego wzorca. Ten post edytował Crozin 11.01.2011, 21:30:31 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 15:12 |